Add crop transform #41
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is a first attempt at a crop transform (#39). I'm pretty sure it needs some work. The code is pretty messy, and I'm not 100% convinced it correctly deals with all possible cases. I also still don't know what the best name for this would be. Truncate, crop, trim, clip all seem reasonable.
And finally, it would be nice if there were a way to not crop a sprite down and right (which sort of happens because those parts of the sprite just get overdrawn). Would it make sense to draw the grid in multiple passes, one per collision layer? This would probably have some other awkward effects for pseudo-3D games. Maybe to do this properly, we'd need some kind of separator syntax in the collision layer list, and then the engine makes a separate rendering pass for each of the segments defined this way.
In any case, I figured I'd throw something together, so you've got something to go off of. This isn't really meant to be merged as is.